/**
    Copyright (C) 2011  Alexander Vollmer

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
package org.jefb.sec.entity;

import java.security.PublicKey;
import java.util.Date;

import javax.crypto.SecretKey;

import org.jefb.service.IRemoteProxy;

public class SenderSession {

	private String destId;
	private String sessionId;
	private byte[] encryptedSessionId;
	private boolean encryprionAllowed;
	private SecretKey senderAESKey;
	private PublicKey receiverPublicKey;
	private Date creationTime;
	private Date lastAccessTime;
	private Integer accessCounter;
	private IRemoteProxy remoteProxy;
	
	public Date getCreationTime() {
		return creationTime;
	}
	public void setCreationTime(Date creationTime) {
		this.creationTime = creationTime;
	}
	public void setLastAccessTime(Date lastAccessTime) {
		this.lastAccessTime = lastAccessTime;
	}
	public Date getLastAccessTime() {
		return lastAccessTime;
	}
	public void setAccessCounter(Integer accessCounter) {
		this.accessCounter = accessCounter;
	}
	public Integer getAccessCounter() {
		return accessCounter;
	}
	public void setReceiverPublicKey(PublicKey receiverPublicKey) {
		this.receiverPublicKey = receiverPublicKey;
	}
	public PublicKey getReceiverPublicKey() {
		return receiverPublicKey;
	}
	public void setSessionId(String sessionId) {
		this.sessionId = sessionId;
	}
	public String getSessionId() {
		return sessionId;
	}
	public void setDestId(String destId) {
		this.destId = destId;
	}
	public String getDestId() {
		return destId;
	}
	public void setEncryprionAllowed(boolean encryprionAllowed) {
		this.encryprionAllowed = encryprionAllowed;
	}
	public boolean isEncryprionAllowed() {
		return encryprionAllowed;
	}
	public void setEncryptedSessionId(byte[] encryptedSessionId) {
		this.encryptedSessionId = encryptedSessionId;
	}
	public byte[] getEncryptedSessionId() {
		return encryptedSessionId;
	}
	public void setSenderAESKey(SecretKey senderAESKey) {
		this.senderAESKey = senderAESKey;
	}
	public SecretKey getSenderAESKey() {
		return senderAESKey;
	}
	public void setRemoteProxy(IRemoteProxy remoteProxy) {
		this.remoteProxy = remoteProxy;
	}
	public IRemoteProxy getRemoteProxy() {
		return remoteProxy;
	}
	
		
}
